package com.it.park.dao;

import java.util.List;
import java.util.Map;

import com.it.park.dao.base.BaseMapper;
import com.it.park.model.Article;
import com.it.park.model.ArticleVo;

public interface ArticleMapper extends BaseMapper<Article>{

	/**
     * 点击热度推荐
     */
    List<Article> hotList();
    
    Integer updateClickRate(Integer id);
    
    Integer updateComment(Map<String,Object> map);//评论
    
    List<Article> listRelationUser(Map<String,Object> map);
    
    List<Article> selectByCategoryType(Map<String,Object> map);
	  
	Integer  selectByCategoryTypeTotal(Integer categoryType);
    
    /**
     *  前端页面按分类显�?
     * @param map
     * @return
     */
	  List<Article> selectByType(Map<String,Object> map);
	  
	  /**
	   *  前端页面按分类显示�?�?
	   * @param map
	   * @return
	   */
	 Integer  selectByTypeTotal(Integer articleTypeId);
    
	 /**
	  * 删除到回收站
	  * @param id
	  * @return
	  */
	 Integer putToRecycle(Integer id);
	 
	 /**
	  *  设置为草稿
	  * @param id
	  * @return
	  */
	 Integer setToDraft(Integer id);
	 
	 /**
	  * 从回收站恢复
	  * @param userId
	  * @return
	  */
	 Integer recoverFromRecycle(Integer id);
	 
	 /**
	  * 显示回收站中的文章
	  * @param userId
	  * @return
	  */
	 List<Article> selectFromRecycle(Integer userId);
	 
	 /**
	  *  显示回草稿箱中的文章
	  * @param userId
	  * @return
	  */
	 List<Article> selectFromDraft(Integer userId);
	 
	 /**
	  * 你可能还感兴趣的文章
	  * @param id
	  * @return
	  */
	 List<Article> selectOtherInterested(Integer id);
	 
	 /**
	  * 文章状态审核
	  * @param article
	  */
	 void updateReview(Article article);
	 
	 /**
	  * 首页最新评论文章
	  * @return
	  */
	 List<ArticleVo> selectNewArticleComment();
}